A flash array is a storage system including a solid state disk and a controller. The controller manages storage space of the solid state disk in a form of a segment. A segment is an area with a segment of consecutive logical block addresses allocated by the controller, and the segment may be mapped to a segment of consecutive logical block addresses on the solid state disk. After receiving a write request from a host, the controller allocates a segment to the write request, generates a new write request based on the allocated segment, where the new write request carries to-be-written data and a logical block address that is of the solid state disk corresponding to the allocated segment, and then sends the new write request to the solid state disk. After receiving the new write request from the controller, the solid state disk selects a physical storage resource based on a policy of the solid state disk, writes the data carried in the new write request to the physical storage resource, and then records the mapping relationship between the logical block address of the solid state disk and the physical storage resource, and the recorded mapping relationship is used as a basis for subsequent data queries.
Because the process of selecting the physical storage resource by the solid state disk is totally based on the policy of the solid state disk and is transparent to the controller, a problem that the controller cannot effectively use the storage space of the solid state disk may occur.